Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(extensions): DataFilterExtension handling of filterSoftRange #8800

Merged
merged 3 commits into from
Apr 18, 2024

Conversation

Pessimistress
Copy link
Collaborator

Closes #8774

Change List

  • When filterSoftRange is truncated by filterRange fallback to use hard edge

Copy link
Collaborator

@ibgreen ibgreen left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A doc change warranted, or this is just an edge case?
Do we have a test harness?

Copy link
Collaborator

@felixpalmer felixpalmer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if it would be more efficient to keep the old shader and instead clip the value of the soft range in JS so it could never be in the wrong range

@Pessimistress
Copy link
Collaborator Author

@ibgreen no doc change required, this is a bug fix

@felixpalmer the issue here is when filter_min equals filter_softMin we still cannot use smoothstep.

@coveralls
Copy link

coveralls commented Apr 17, 2024

Coverage Status

coverage: 90.004% (+0.002%) from 90.002%
when pulling 08f65c3 on x/data-filter-fix
into fa029dd on master.

@Pessimistress Pessimistress merged commit 48ccc7a into master Apr 18, 2024
4 checks passed
@Pessimistress Pessimistress deleted the x/data-filter-fix branch April 18, 2024 01:09
@felixpalmer
Copy link
Collaborator

@Pessimistress I was suggesting we avoid filter_min === filter_softMin by clamping filter_softMin to filter_min + epsilon in JavaScript

@Pessimistress
Copy link
Collaborator Author

If you look at the original issue, they are using filter_min == filter_softMin == filter_softMax == filter_max. It would not work with any modification.
And that's not even getting into how to determine epsilon for an arbitrary float32...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[Bug] Filter extension soft range unexpected behavior
4 participants